vrclk.obj function summary: =========================== This list contains UNIX-like summaries for the routines that are currently contained in vrclkx.obj. vrclkx.obj is intended for use with the tgdlp4xx.obj ModeX graphics driver. However this library could also act as a stand alone module. In order for vrclkx.obj to work the following hardware items are required: - IBM compatible PC/XT/AT with 80188 CPU or above - a VGA card vrclkc.obj is assembled for the COMPACT memory model. This means that all calls to procedures must be declared as NEAR while pointers to data are all FAR. vrclkl.obj is assembled for the LARGE memory model. In this model all calls to procedures as well as all pointers to data are to be declared as FAR. vrclkx.obj expects all parameters to be passed using C calling conventions. The C calling mechanism is described in tgdlp4.txt. byte startvrclk(ubyte fcreset); initialize new timer interrupt and start frame counting FUNCTION: Before using any of the vrclk library functions this routine must be called. It reprograms the system timer to generate interrupts synchronized to the vertical retrace of the VGA card and installs a new interrupt handler which will increment a frame counter every interrupt. This means you can concentrate fully on doing your graphics - wasting no unnecassary time on frame counting to keep a constant screen update rate for e.g. double-buffering. The initial value of the frame counter is passed in fcreset. In a double-buffered environment it is usefull to give the frame counter the graphics update frame rate when starting the vrclk system. Example for page double-buffering: Let's say your double buffer graphics update frame rate is 3 (giving you 70/3 = 23,3 frames per second). Your program looks like this: ... #define UPDATE_RATE 3 /* graphics update frame rate */ ... ubyte page=0; /* initial graphics page to prepare */ ... /* prepare first graphics page */ preparepage(page); /* start frame counting */ startvrclk(UPDATE_RATE); /* page double-buffering main loop */ { /* immediately after startvrclk(UPDATE_RATE) was called * vrclk() will return UPDATE_RATE... */ while (vrclk()